package model;

import java.math.BigDecimal;
import java.math.RoundingMode;

public class Empregado extends BaseEntity {

    private Long id;
    private String nome;
    private Boolean sexo;
    private BigDecimal salario;
    private String cpf;
    private String dataNascimento;
    private String dataAdmissao;
    private String dataDesligamento;

    public Empregado() {}

    public Empregado(Long id, String nome, Boolean sexo, BigDecimal salario, String cpf, String dataNascimento, String dataAdmissao, String dataDesligamento) {
        this.id = id;
        this.nome = nome;
        this.sexo = sexo;
        this.salario = salario;
        this.cpf = cpf;
        this.dataNascimento = dataNascimento;
        this.dataAdmissao = dataAdmissao;
        this.dataDesligamento = dataDesligamento;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {	
        this.nome = nome;
    }
    public Boolean getSexo() {
        return sexo;
    }

    public void setSexo(Boolean sexo) {
        this.sexo = sexo;
    }

    public void setSexo(String sexo) {
        if (sexo.equalsIgnoreCase("Masculino")) {
            this.sexo = true;
        } else if (sexo.equals("Feminino")) {
            this.sexo = false;
        } else {
            this.sexo = null;
        }
    }

    public String getSexoPorExtenso() {
        if (sexo) {
            return "Masculino";
        } else {
            return "Feminino";
        }
    }

    public BigDecimal getSalario() {
        return salario;
    }

    public void setSalario(BigDecimal salario) {
        this.salario = salario;
    }

    public void setSalario(String salario) {
        if (salario.equals("")) {
                this.salario = null;
        } else {
                this.salario = new BigDecimal(salario).setScale(2, RoundingMode.HALF_EVEN);
        }
    }

    public String getCpf() {
        return cpf;
    }

    public void setCpf(String cpf) {
        this.cpf = cpf;
    }

    public String getDataNascimento() {
        return dataNascimento;
    }

    public void setDataNascimento(String dataNascimento) {
        this.dataNascimento = dataNascimento;
    }

    public String getDataAdmissao() {
        return dataAdmissao;
    }

    public void setDataAdmissao(String dataAdmissao) {
        this.dataAdmissao = dataAdmissao;
    }

    public String getDataDesligamento() {
        return dataDesligamento;
    }

    public void setDataDesligamento(String dataDesligamento) {
        this.dataDesligamento = dataDesligamento;
    }

    public int getIdade() {
        return 0;
    }

}
